<?php
namespace Home\Controller;
use Think\Controller;
class UserController extends CommonController{

	//默认显示商城用户登录界面
	public function index(){
		$this->weibo();
		$this->display("login");

	}

	public function login(){
		$this->weibo();
		$this->display("login");
	}
	//商城用户登录功能
	public function userLogin(){
		$User = M('User'); // 实例化User对象
		$rules = array(
			array('email','require','邮箱必须！'), // 邮箱必须
			array('password','require','请输入账号密码！'), // 账号密码必须
		);
		$data = $User->validate($rules)->create();
		if (!$data) {
			$this->error($User->getError()); // 如果创建失败 表示验证没有通过 输出错误提示信息
		}else{
			// 验证通过 可以进行其他数据操作
   			$res = $User->where("email='{$data['email']}'  and password='{$data['password']}' ")->find();
   			if (!$res) {
   				$this->error('账号与密码不匹配！');
   			}else{
   				//获取用户基本信息
   				$_SESSION['USERID'] = $res['id'];
   				$_SESSION['USERNAME'] =$res['username'];
   				$res['headimg']=json_decode($res['headimg'],true);
   				$_SESSION['USERHEADIMG'] =$res['headimg'][0];
   				$_SESSION['USERPHONE'] =$res['telephone'];
   				$_SESSION['USEREMAIL'] = $res['email'];
   				
   				//跳转到商城首页
   				$this->redirect('/Home/Index/index', '', 1,'登录成功，页面跳转中...请稍候');
   			}
		}
	}
	//显示商城用户注册页面
	public function register(){
		$this->display("register");
	}
	//商城用户注册功能
	public function regUser(){
		$rules = array(
			array('username','require','用户名必须填写！'), // 用户名必须
			array('username','','用户名已经存在！',1,'unique',1), // 验证用户名是否已经存在
			array('email','','电子邮箱已被占用！',1,'unique',1), // 验证电子邮箱是否已被占用
			array('telephone','','手机号码已被占用！',1,'unique',1), // 验证手机号码是否已被占用
			array('telephone', '/^(0|86|17951)?(13[0-9]|15[012356789]|18[0-9]|14[57])[0-9]{8}$/', '手机号不合法！', 1, 'regex', 3), //验证手机号码是否合法
			array('password','8,16','密码长度不正确',0,'length'), // 验证密码是否在指定长度范围
			array('confirmpassword','password','确认密码不一致',0,'confirm'), // 验证确认密码是否和密码一致	
		);
		$User = M('User'); // 实例化User对象
		$data=$User->validate($rules)->create();
		if (!$data){
			// 如果创建失败 表示验证没有通过 输出错误提示信息
			$this->error($User->getError());
		}else{
			// 验证通过 可以进行下一步
			$data['addtime'] = time();
			$res = $User->add($data);
			if (!$res) {
				$this->error("商城账号注册失败，请确保信息填写正确！");
			}else{
				$this->redirect("/Home/User/index",'',1,'商城账号注册成功！欢迎享受愉悦的购物之旅！');
			}
		}
	}
	//商城用户注销登录
	public function userLoginout(){
		//判断是否是登录状态
		$res=$this->isLogin();
		if ($res) {
			session('USERID',null);
			session('USERNAME',null);
			session('[destroy]');   //thinkphp中清除session方法
    			$this->redirect("/Home/User/index",'',1,'账号退出成功！欢迎你再次回归！');
		}else{
			$this->error("你还没登录！");
		}
		
	}

	//微博一键登录
	public function  weibo(){
	 	$key = C('key');
	                         //$Secret = 'ba2d28b26bf1951a5ff2133267ca05a4';
	                 $secret =C('secret');
	                $redirect_uri=C('redirect_uri');
	                $redirect_url = urlencode($redirect_uri);
	                         //1.获取code
	                $url = "https://api.weibo.com/oauth2/authorize?client_id={$key}&response_type=code&redirect_uri={$redirect_url}";
	                $this->assign('weibourl',$url);
	}
}